<%@ page contentType="text/html;charset=UTF-8" %>
<script type="text/javascript">
var initCost = false;
$(document).ready(function() {

	$('#table').bootstrapTable({
			  //请求方法
				method: 'post',
				//类型json
				dataType: "json",
				contentType: "application/x-www-form-urlencoded",
                 //是否显示行间隔色
                striped: true,
                //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
                cache: false,
				//显示检索按钮
		        showSearch: true,
				//显示刷新按钮
				showRefresh: true,
				//显示切换手机试图按钮
				showToggle: true,
				//显示 内容列下拉框
				showColumns: true,
				//显示切换分页按钮
                //是否显示分页（*）
                pagination: true,

                pageList: [10, 25, 50, 100,"All"],
                //这个接口需要处理bootstrap table传递的固定参数,并返回特定格式的json数据
                url: "${ctx}/sys/stockRule/data",
                //默认值为 'limit',传给服务端的参数为：limit, offset, search, sort, order Else
                //queryParamsType:'',
                ////查询参数,每次调用是会带上这个参数，可自定义
                queryParams : function(params) {
                	var searchParam = $("#searchForm").serializeJSON();
                	searchParam.pageNo = params.limit === undefined? "1" :params.offset/params.limit+1;
                	searchParam.pageSize = params.limit === undefined? -1 : params.limit;
                	searchParam.orderBy = params.sort === undefined? "" : params.sort+ " "+  params.order;
                    return searchParam;
                },
				onShowSearch: function () {
					$("#search-collapse").slideToggle();
				},
                //分页方式：client客户端分页，server服务端分页（*）
                sidePagination: "server",
                contextMenuTrigger:"right",//pc端 按右键弹出菜单
                contextMenuTriggerMobile:"press",//手机端 弹出菜单，click：单击， press：长按。
                onContextMenuItem: function(row, $el){
                    if($el.data("item") == "edit"){
                    	edit(row.id);
                    } else if($el.data("item") == "delete"){
                        del(row.id);

                    }
                },

                columns: [{
			        checkbox: true

			    },{
			        field: 'label',
			        title: '单据类别'
			    }, {
                    field: 'operate',
                    title: '操作',
                    align: 'center',
                    events: {
        		        'click .setDictValue': function (e, value, row, index) {
                            initCost = true;
                            $("#left").attr("class", "col-sm-6");
                            setTimeout(function(){
                                $("#right").fadeIn(500);
                            },500)
                            $("#dictValueName").html(row.label);
                            $("#dictValueId").val(row.id);
                            $('#stockRuleTable').bootstrapTable("refresh",{query:{dictValueId:row.id}})
        		        }
        		    },
                    formatter:  function operateFormatter(value, row, index) {
        		        return [
    						<shiro:hasPermission name="sys:dict:edit">
    							'<a href="#" class="setDictValue"  title="管理附件类型"><i class="fa fa-cog"></i> </a>'
    						</shiro:hasPermission>
        		        ].join('');
        		    }
                }]
			});

		  $('#table').on('check.bs.table uncheck.bs.table load-success.bs.table ' +
	                'check-all.bs.table uncheck-all.bs.table', function () {
	            $('#remove').prop('disabled', ! $('#table').bootstrapTable('getSelections').length);
	            $('#edit').prop('disabled', $('#table').bootstrapTable('getSelections').length!=1);
	        });

		  $("#search").click("click", function() {// 绑定查询按扭
			  $('#table').bootstrapTable('refresh');
			});
		  $("#reset").click("click", function() {// 绑定查询按扭
			  $("#searchForm  input").val("");
			  $("#searchForm  select").val("");
			  $('#table').bootstrapTable('refresh');
			});

	});

  function getIdSelections() {
        return $.map($("#table").bootstrapTable('getSelections'), function (row) {
            return row.id
        });
    }

  function refresh(){
      $('#table').bootstrapTable('refresh');
  }
function refreshDictValue(){
    $('#stockRuleTable').bootstrapTable("refresh");
}


$(document).ready(function() {
	var $dictValueTable =	$('#stockRuleTable').bootstrapTable({
			  //请求方法
				method: 'post',
				//类型json
				dataType: "json",
				contentType: "application/x-www-form-urlencoded",
                 //是否显示行间隔色
                striped: true,
                //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
                cache: false,
                //是否显示分页（*）
                pagination: false,
                //这个接口需要处理bootstrap table传递的固定参数,并返回特定格式的json数据
                url: "${ctx}/sys/stockRule/getStockRule",
                //默认值为 'limit',传给服务端的参数为：limit, offset, search, sort, order Else
                //queryParamsType:'',
                ////查询参数,每次调用是会带上这个参数，可自定义
                queryParams : function(params) {
                    return {dictValueId:$("#dictValueId").val()};
                },
                uniqueId : 'id',
                onLoadSuccess: function(){
                },
                //分页方式：client客户端分页，server服务端分页（*）
                sidePagination: "server",
                columns: [{
			        field: 'objectname',
			        title: '单据名称'
			    },{
					field: 'datarule',
					title: '取数规则'

				},{
			        field: 'stockrule',
			        title: '目标规则',
                    formatter: function (value, row, index) {
                        return jp.getDictLabel(${fns:toJson(fns:getDictList('Sys_StockStatus'))}, value, "-");
                    }
			    },{
			        field: 'stockRuleType',
			        title: '状态类别',
                    formatter: function (value, row, index) {
                        return jp.getDictLabel(${fns:toJson(fns:getDictList('Sys_StockRuleType'))}, value, "-");
                    }
			    },{
			    	field: 'state',
			        title: '启用',
                    formatter: function (value, row, index) {
                        return jp.getDictLabel(${fns:toJson(fns:getDictList('Sys_YesNo'))}, value, "-");
                    }
			    }, {
                    field: 'operate',
                    title: '操作',
                    align: 'center',
                    events: {
                        'click .edit': function (e, value, row, index) {
                            jp.openSaveDialog('编辑规则', '${ctx}/sys/stockRule/stockRuleForm?id=' + row.id,'800px', '500px')
                        },
        		        'click .del': function (e, value, row, index) {
        		        	jp.confirm('确认要删除键值吗？',function(){
        		        		jp.loading();
        		        		$.get('${ctx}/sys/stockRule/deleteStockRule?id='+row.id, function(data){
  	                    	  		if(data.success){
  	                    	  			$('#stockRuleTable').bootstrapTable("refresh");
  	                    	  			jp.success(data.msg);
  	                    	  		}else{
  	                    	  			jp.error(data.msg);
  	                    	  		}
  	                    	  	})
        		        	});
        		        }
        		    },
                    formatter:  function operateFormatter(value, row, index) {
        		        return [
                            <shiro:hasPermission name="sys:stockRule:edit">
                            '<a href="#" class="edit" title="编辑" >[编辑] </a>',
                            </shiro:hasPermission>
                            <shiro:hasPermission name="sys:stockRule:edit">
    						'<a href="#" class="del" title="删除" >[删除] </a>'
    						</shiro:hasPermission>
        		        ].join('');
        		    }
                }]

			});

		  $("#stockRuleButton").click(function(){
                jp.openSaveDialog('添加规则', '${ctx}/sys/stockRule/stockRuleForm?dictValueId=' + $("#dictValueId").val(),'800px', '500px')
			});

		  });


	</script>
